package org.arrow.db.pojo;

import java.sql.Timestamp;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * Department entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "department", catalog = "hip_spr_tap")
public class Department implements java.io.Serializable {

	// Fields

	private Long deptId;
	private Long parentDepId;
	private String deptName;
	private String deptDescription;
	private Boolean enable;
	private Timestamp createDate;
	private Timestamp lastModifyDate;

	// Constructors

	/** default constructor */
	public Department() {
	}

	/** minimal constructor */
	public Department(Long deptId, String deptName, Boolean enable,
			Timestamp createDate, Timestamp lastModifyDate) {
		this.deptId = deptId;
		this.deptName = deptName;
		this.enable = enable;
		this.createDate = createDate;
		this.lastModifyDate = lastModifyDate;
	}

	/** full constructor */
	public Department(Long deptId, Long parentDepId, String deptName,
			String deptDescription, Boolean enable, Timestamp createDate,
			Timestamp lastModifyDate) {
		this.deptId = deptId;
		this.parentDepId = parentDepId;
		this.deptName = deptName;
		this.deptDescription = deptDescription;
		this.enable = enable;
		this.createDate = createDate;
		this.lastModifyDate = lastModifyDate;
	}

	// Property accessors
	@Id
	@Column(name = "DEPT_ID", unique = true, nullable = false)
	public Long getDeptId() {
		return this.deptId;
	}

	public void setDeptId(Long deptId) {
		this.deptId = deptId;
	}

	@Column(name = "PARENT_DEP_ID")
	public Long getParentDepId() {
		return this.parentDepId;
	}

	public void setParentDepId(Long parentDepId) {
		this.parentDepId = parentDepId;
	}

	@Column(name = "DEPT_NAME", nullable = false, length = 256)
	public String getDeptName() {
		return this.deptName;
	}

	public void setDeptName(String deptName) {
		this.deptName = deptName;
	}

	@Column(name = "DEPT_DESCRIPTION", length = 512)
	public String getDeptDescription() {
		return this.deptDescription;
	}

	public void setDeptDescription(String deptDescription) {
		this.deptDescription = deptDescription;
	}

	@Column(name = "ENABLE", nullable = false)
	public Boolean getEnable() {
		return this.enable;
	}

	public void setEnable(Boolean enable) {
		this.enable = enable;
	}

	@Column(name = "CREATE_DATE", nullable = false, length = 19)
	public Timestamp getCreateDate() {
		return this.createDate;
	}

	public void setCreateDate(Timestamp createDate) {
		this.createDate = createDate;
	}

	@Column(name = "LAST_MODIFY_DATE", nullable = false, length = 19)
	public Timestamp getLastModifyDate() {
		return this.lastModifyDate;
	}

	public void setLastModifyDate(Timestamp lastModifyDate) {
		this.lastModifyDate = lastModifyDate;
	}

}